Embodiments of the present invention relate generally to providing software updates. More specifically, embodiments of the present invention relate to patching software based on seeded product information.
Methods for updating installed software can be classified into two general categories, re-installing and patching. Re-installing describes a process in which an installed software package, such as an application, is replaced. That is, a previously installed software package is removed or deleted from the system in which it is installed and the original version or a new, modified version of the package is installed in its place. Such a process, while effective, is not always desirable to the user or users of the software package since it usually results in the loss of data, configurations, etc.
Patching refers to a process in which a portion of the installed software package or configuration thereof is modified, added, deleted, etc. for example to correct some particular problem or modify the features or behavior of the installed software package. However, current patching systems require some knowledge of the installed software package in order to properly utilize a patch. For example, a central repository or registry may identify those software packages in a particular system. Patches can be located and applied based on this information. However, in some cases, the central repository or registry may not reflect all software packages on a system or may become incorrect or outdated. Hence, there is a need in the art for improved methods and systems for patching software.